package cqrtplm.dto;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @description:
 * @author: zhengxiong.jiang
 * @createDate: 2025-06-27
 * @version: 1.0
 */
@Data
public class RtCfgDemandOrdersDTO {

    /**主键id*/
    private String id;

    /**需求状态表id*/
    private String statusid;

    /** 产品类别 */
    private String category;

    /** 需求编码 */
    private String demandCode;

    /** 需求类型 */
    private String demandType;

    /** 创建人 */
    private String creator;

    /** 客户 */
    private String customer;

    /** 销售国 */
    private String salesCountry;

    /** 开发令 */
    private String developmentOrder;

    /** 机型 */
    private String model;

    /** 需求数量 */
    private Long quantity;

    /** 需求等级 */
    private String demLevel;

    /** 客户交期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date customerDeliveryDate;

    /** 任务状态 */
    private String taskStatus;

    /** 接单时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date orderReceivedTime;

    /** 订单周期 */
    private Long orderCycle;

    /** 开始处理时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startProcessingTime;

    /** 预估完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date estimatedCompletionTime;

    /** 实际完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date actualCompletionTime;

    /** 当前节点 */
    private String currentNode;

    /** 当前节点接收时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date currentNodeReceivedTime;

    /** 变更/延期原因说明 */
    private String changeDelayReason;

    /** 终端工厂 */
    private String terminalFactory;

    /** 动力工厂 */
    private String powerFactory;

    /** 需求类别 */
    private String demandCategory;

    /** 改在途 */
    private String modifiedInTransit;

    /** 在途订单 */
    private String inTransitOrder;

    /** 线别 */
    private String productionLine;

    /** 需求编码 */
    private String demandCodeDuplicate;

    /** 参照裸机码 */
    private String bareMachineCodeReference;

    /** 参照成品码 */
    private String finishedProductCodeReference;

    /** 配置 */
    @Excel(name = "配置")
    private String configuration;

    /** 组动单包 */
    @Excel(name = "组动单包")
    private String assemblyPackage;

    /** 无需动力 */
    @Excel(name = "无需动力")
    private String noPowerRequired;

    /** 包装组 */
    @Excel(name = "包装组")
    private String packagingGroup;

    /** 贴花组 */
    @Excel(name = "贴花组")
    private String stickerGroup;

    /** 检小批 */
    @Excel(name = "检小批")
    private String inspectionSmallBatch;

    /** 流程编码 */
    private String flowCode;

    /** 变更单号 */
    private String changeOrder;

}
